VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "CE_325CSym"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Attribute VB_Ext_KEY = "SP3DEqpUSSClassType" ,"SYM"
Attribute VB_Ext_KEY = "SP3DV6UpgradeSO" ,"Upgraded by Eqp SO Upgrade Wizard at 11/29/2004-5:14:47 AM"
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
'
'   Copyright (c) 2004, Intergraph Corporation. All rights reserved.
'
'   PlateExchangerC.cls
'   ProgID:        SP3DE_325CompAsm.CE_325CSym
'   Author:        MS
'   Creation Date: Tuesday, Feb 17 2004
'   Description:
'    The symbol is prepared from PDS Equipment guide E325. The symbol consists of 11 physical outputs.
'
'   Change History:
'   dd.mmm.yyyy     who     change description
'   -----------     ---     ------------------
'
'   29.Nov.2004     V6UpgradeSO        Made compatible with Smart Occurrence based Equipments
'   11.Jul.2006      kkc                    DI 95670-Replaced names with initials in the revision history.
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Option Explicit

Private Const MODULE = "CE_325CSym:"  'Used for error messages

Private m_oSymbolHelper As IJSymbolHelper

' Declaration of the User Symbol Services interface
Implements IJDUserSymbolServices

Private Sub Class_Initialize()

    Const METHOD = "Class_Initialize:"
    On Error GoTo ErrorHandler

    Set m_oSymbolHelper = New SymbolServices
    m_oSymbolHelper.ProjectName = "SP3DE_325CompAsm"
    m_oSymbolHelper.ClassName = "CE_325CSym"

' Inputs
    m_oSymbolHelper.NumInputs = 15

    m_oSymbolHelper.AddInputDef 1, "BotPlate1toPP", "Dist from Bottom of Plate1 to PP", 1
    m_oSymbolHelper.AddInputDef 2, "Plate1Height", "Height of Plate1", 1.75
    m_oSymbolHelper.AddInputDef 3, "Plate1Thickness", "Thickness of Plate1", 0.2
    m_oSymbolHelper.AddInputDef 4, "PlatesWidth", "Width of Plate", 1
    m_oSymbolHelper.AddInputDef 5, "ExchangerLength", "Length of Exchanger", 0.75
    m_oSymbolHelper.AddInputDef 6, "ExchangerHeight", "Height of Exchanger", 1
    m_oSymbolHelper.AddInputDef 7, "ExchangerWidth", "Width of Exchanger", 0.75
    m_oSymbolHelper.AddInputDef 8, "Plate2Height", "Height of Plate2", 1.5
    m_oSymbolHelper.AddInputDef 9, "Plate2Thickness", "Thickness of Plate2", 0.2
    m_oSymbolHelper.AddInputDef 10, "RodsLength", "Length of Rod", 0.75
    m_oSymbolHelper.AddInputDef 11, "RodsDiameter", "Diameter of Rod", 0.2
    m_oSymbolHelper.AddInputDef 12, "BotSidePlatetoRod2Cen", "Dist from Bottom of SidePlate to Rod2 Cen", 0.5
    m_oSymbolHelper.AddInputDef 13, "RodsCentoCen", "Rods Centre to Centre dist", 1
    m_oSymbolHelper.AddInputDef 14, "SidePlateThickness", "Thickness of SidePlate", 0.2
    m_oSymbolHelper.AddInputDef 15, "SidePlateWidth", "Width of Side Plate ", 0.4

' Outputs
    m_oSymbolHelper.NumOutputs = 12
    m_oSymbolHelper.AddOutputDef 1, "Plane1", "Plane 1", SimplePhysical
    m_oSymbolHelper.AddOutputDef 2, "DefaultSurface", "Default Surface", SimplePhysical
    m_oSymbolHelper.AddOutputDef 3, "Plane2", "Plane 2", SimplePhysical
    m_oSymbolHelper.AddOutputDef 4, "Plane3", "Plane 3", SimplePhysical
    m_oSymbolHelper.AddOutputDef 5, "Plane4", "Plane 4", SimplePhysical
    m_oSymbolHelper.AddOutputDef 6, "Plane5", "Plane 5", SimplePhysical
    
    m_oSymbolHelper.AddOutputDef 7, "ExchangerBody", "Exchanger Body", SimplePhysical
    m_oSymbolHelper.AddOutputDef 8, "Plate2", "Plate 2", SimplePhysical
    m_oSymbolHelper.AddOutputDef 9, "Rod1", "Rod 1", SimplePhysical
    m_oSymbolHelper.AddOutputDef 10, "Rod2", "Rod 2", SimplePhysical
    m_oSymbolHelper.AddOutputDef 11, "SidePlate", "Side Plate", SimplePhysical
    m_oSymbolHelper.AddOutputDef 12, "PlateExchangerCompControlPoint", "Control Point of Plate Exchanger Component", ReferenceGeometry

' Aspects
    m_oSymbolHelper.NumAspects = 2
    m_oSymbolHelper.AddAspectDef 1, "SimplePhysical", "Physical", SimplePhysical
    m_oSymbolHelper.AddAspectDef 2, "ReferenceGeometry", "ReferenceGeometry", ReferenceGeometry

    Exit Sub

ErrorHandler:
   Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
    Err.HelpFile, Err.HelpContext

End Sub

Private Sub Class_Terminate()
    Set m_oSymbolHelper = Nothing
End Sub

' note that the rest of the code is generated by the Symbol Wizard and should not need to be modified
Public Function IJDUserSymbolServices_InstanciateDefinition( _
                ByVal CodeBase As String, _
                ByVal defParameters As Variant, _
                ByVal ActiveConnection As Object) As Object
    ' call symbol services default implementation of this method
    Const METHOD = "IJDUserSymbolServices_InstanciateDefinition:"
On Error GoTo Errx
    Set IJDUserSymbolServices_InstanciateDefinition = m_oSymbolHelper.InstanciateDefinition(CodeBase, defParameters, ActiveConnection)
    
    Exit Function

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
    Err.HelpFile, Err.HelpContext
End Function
Public Function IJDUserSymbolServices_GetDefinitionName(ByVal definitionParameters As Variant) As String
Const METHOD = "IJDUserSymbolServices_GetDefinitionName:"
  On Error GoTo Errx
      IJDUserSymbolServices_GetDefinitionName = m_oSymbolHelper.ProjectName + "." + m_oSymbolHelper.ClassName
    
    Exit Function

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
    Err.HelpFile, Err.HelpContext
End Function

Public Sub IJDUserSymbolServices_InitializeSymbolDefinition(ByRef pSymbolDefinition As IJDSymbolDefinition)
Const METHOD = "IJDUserSymbolServices_InitializeSymbolDefinition:"
On Error GoTo Errx
    m_oSymbolHelper.InitializeSymbolDefinition pSymbolDefinition
Exit Sub

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
    Err.HelpFile, Err.HelpContext
      
End Sub

Public Sub IJDUserSymbolServices_InvokeRepresentation(ByVal sblOcc As Object, _
                    ByVal repName As String, _
                    ByVal outputcoll As Object, _
                    ByRef arrayOfInputs())
Const METHOD = "IJDUserSymbolServices_InvokeRepresentation:"
On Error GoTo Errx
    m_oSymbolHelper.InvokeRepresentation sblOcc, repName, outputcoll, arrayOfInputs
        
Exit Sub

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
            Err.HelpFile, Err.HelpContext
End Sub

Public Function IJDUserSymbolServices_EditOccurence(ByRef pSymbolOccurence As Object, ByVal transactionMgr As Object) As Boolean
Const METHOD = "IJDUserSymbolServices_EditOccurence:"
On Error GoTo Errx
    ' The definition uses the generic EditOccurrence command
    IJDUserSymbolServices_EditOccurence = False
        Exit Function

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
            Err.HelpFile, Err.HelpContext

End Function

